`:top
`!wxPython`! is a `F33f`_`[wrapper`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Wrapper_library]`_`f for the `F33f`_`[cross-platform`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Cross-platform]`_`f `F33f`_`[GUI`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Graphical_user_interface]`_`f `F33f`_`[API`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Application_programming_interface]`_`f (often referred to as a "`F33f`_`[toolkit`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Toolkit]`_`f") `F33f`_`[wxWidgets`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=WxWidgets]`_`f (which is written in `F33f`_`[C++`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=C++]`_`f) for the `F33f`_`[Python programming language`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Python_(programming_language)]`_`f. It is one of the alternatives to `F33f`_`[Tkinter`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Tkinter]`_`f. It is implemented as a Python extension module (`F33f`_`[native code`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Native_code]`_`f).
>>Contents
• `F0af`_`[History`#history]`_`f
• `F0af`_`[Project Phoenix`#project-phoenix]`_`f
• `F0af`_`[Use`#use]`_`f
• `F0af`_`[Example`#example]`_`f
• `F0af`_`[License`#license]`_`f
• `F0af`_`[Applications developed with wxPython`#applications-developed-with-wxpython]`_`f
• `F0af`_`[References`#references]`_`f
• `F0af`_`[Citations`#citations]`_`f
• `F0af`_`[Sources`#sources]`_`f
• `F0af`_`[Further reading`#further-reading]`_`f
• `F0af`_`[External links`#external-links]`_`f
-─
>>History
In 1995, Robin Dunn needed a `F33f`_`[GUI`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Graphical_user_interface]`_`f application to be deployed on `F33f`_`[HP-UX`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=HP-UX]`_`f systems but also run `F33f`_`[Windows 3.1`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Windows_3.1]`_`f within short time frame. He needed a `F33f`_`[cross-platform`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Cross-platform_software]`_`f solution. While evaluating free and commercial solutions, he ran across `F33f`_`[Python`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Python_(programming_language)]`_`f bindings on the wxWidgets toolkit `F33f`_`[webpage`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Web_page]`_`f (known as wxWindows at the time). This was Dunn's introduction to Python. Together with Harri Pasanen and Edward Zimmerman he `F33f`_`[developed`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Software_Developer]`_`f those initial bindings into wxPython 0.2.`:cite-ref-0-2-0[`F5bf`_`[2`#cite-note-0-2]`_`f]
In August 1998, version 0.3 of wxPython was released. It was built for wxWidgets 2.0 and ran on Win32, with a wxGTK version in the works.`:cite-ref-3[`F5bf`_`[3`#cite-note-3]`_`f]
The first versions of the wrapper were created by hand. However, the `F33f`_`[code`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Source_code]`_`f became difficult to maintain and keep synchronized with wxWidgets releases. By 1997, versions were created with `F33f`_`[SWIG`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=SWIG]`_`f, greatly decreasing the amount of work to update the wrapper.`:cite-ref-0-2-1[`F5bf`_`[2`#cite-note-0-2]`_`f]
>>>Project Phoenix
In 2010, the Project Phoenix began; an effort to clean up the wxPython `F33f`_`[implementation`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Implementation]`_`f and in the process make it compatible with Python 3.`:cite-ref-4[`F5bf`_`[4`#cite-note-4]`_`f] The project is a new implementation of wxPython, focused on improving speed, maintainability and extensibility. Like the previous version of wxPython, it wraps the wxWidgets `F33f`_`[C++`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=C++]`_`f toolkit and provides access to the `F33f`_`[user interface`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=User_interface]`_`f portions of the wxWidgets `F33f`_`[API`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=API]`_`f.`:cite-ref-5[`F5bf`_`[5`#cite-note-5]`_`f]
With the release of 4.0.0a1 wxPython in 2017, the Project Phoenix version became the official version.`:cite-ref-6[`F5bf`_`[6`#cite-note-6]`_`f] wxPython 4.x is the current version being developed as of June 2022.`:cite-ref-7[`F5bf`_`[7`#cite-note-7]`_`f]
>>Use
wxPython enables Python to be used for `F33f`_`[cross-platform`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Cross-platform_software]`_`f `F33f`_`[GUI`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Graphical_user_interface]`_`f applications requiring very little, if any, platform-specific code.
>>>Example
This is a simple "`F33f`_`[Hello world`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Hello_world_program]`_`f" module, depicting the creation of the two main `F33f`_`[objects`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Object_(computer_science)]`_`f in wxPython (the main window object and the application object), followed by passing the control to the `F33f`_`[event-driven`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Event-driven_programming]`_`f system (by calling `B100`F9d9MainLoop()`f`b) which manages the user-interactive part of the program.
`B100`F9d9#!/usr/bin/env python3`f`b
`B100`F9d9`f`b
`B100`F9d9import wx`f`b
`B100`F9d9`f`b
`B100`F9d9app = wx.App(False) # Create a new app, don't redirect stdout/stderr to a window.`f`b
`B100`F9d9frame = wx.Frame(None, title="Hello World") # A Frame is a top-level window.`f`b
`B100`F9d9frame.Show(True) # Show the frame.`f`b
`B100`F9d9app.MainLoop()`f`b
This is another example of the wxPython Close Button with wxPython GUI display show in Windows 10 operating system.
`B100`F9d9import wx`f`b
`B100`F9d9`f`b
`B100`F9d9class WxButton(wx.Frame):`f`b
`B100`F9d9`f`b
`B100`F9d9 def __init__(self, *args, **kw):`f`b
`B100`F9d9 super(WxButton, self).__init__(*args, **kw)`f`b
`B100`F9d9 self.InitUI()`f`b
`B100`F9d9`f`b
`B100`F9d9 def InitUI(self):`f`b
`B100`F9d9 pnl = wx.Panel(self)`f`b
`B100`F9d9 closeButton = wx.Button(pnl, label='Close Me', pos=(20, 20))`f`b
`B100`F9d9`f`b
`B100`F9d9 closeButton.Bind(wx.EVT_BUTTON, self.OnClose)`f`b
`B100`F9d9`f`b
`B100`F9d9 self.SetSize((350, 250))`f`b
`B100`F9d9 self.SetTitle('Close Button')`f`b
`B100`F9d9 self.Centre()`f`b
`B100`F9d9`f`b
`B100`F9d9 def OnClose(self, e):`f`b
`B100`F9d9 self.Close(True)`f`b
`B100`F9d9`f`b
`B100`F9d9def main():`f`b
`B100`F9d9 app = wx.App()`f`b
`B100`F9d9 ex = WxButton(None)`f`b
`B100`F9d9 ex.Show()`f`b
`B100`F9d9 app.MainLoop()`f`b
`B100`F9d9`f`b
`B100`F9d9if __name__ == "__main__":`f`b
`B100`F9d9 main()`f`b
>>License
Being a wrapper, wxPython uses the same `F33f`_`[free software license`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Free_software_license]`_`f used by `F33f`_`[wxWidgets`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=WxWidgets]`_`f (`F33f`_`[wxWindows License`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=WxWidgets]`_`f)`:cite-ref-8[`F5bf`_`[8`#cite-note-8]`_`f]—which is approved by `F33f`_`[Free Software Foundation`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Free_Software_Foundation]`_`f and `F33f`_`[Open Source Initiative`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Open_Source_Initiative]`_`f.
>>Applications developed with wxPython
• `F33f`_`[Chandler`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Chandler_(PIM)]`_`f, a `F33f`_`[personal information`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Personal_information_management]`_`f manager
• `F33f`_`[Dropbox`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Dropbox_(service)]`_`f, `F33f`_`[desktop`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Desktop_environment]`_`f client for the Dropbox `F33f`_`[cloud-based`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Cloud_computing]`_`f storage`:cite-ref-9[`F5bf`_`[9`#cite-note-9]`_`f]
• `F33f`_`[Editra`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Editra]`_`f, a `F33f`_`[multi-platform`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Cross-platform_software]`_`f `F33f`_`[text editor`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Text_editor]`_`f
• `F33f`_`[Google Drive`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Google_Drive]`_`f, desktop client for the Google cloud-based storage system`:cite-ref-10[`F5bf`_`[10`#cite-note-10]`_`f]
• `F33f`_`[GRASS GIS`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=GRASS_GIS]`_`f, a free, `F33f`_`[open source`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Open_source]`_`f `F33f`_`[geographical information system`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Geographic_information_system]`_`f
• `F33f`_`[Métamorphose`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Métamorphose_(renamer)]`_`f, a `F33f`_`[batch`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Batch_processing]`_`f renamer
• `F33f`_`[Phatch`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Phatch]`_`f, a photo batch processor
• `F33f`_`[PlayOnLinux`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=PlayOnLinux]`_`f and `F33f`_`[PlayOnMac`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=PlayOnMac]`_`f, `F33f`_`[Wine`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Wine_(software)]`_`f front-ends
• `F33f`_`[PsychoPy`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=PsychoPy]`_`f, experiment creation tool for `F33f`_`[neuroscience`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Neuroscience]`_`f and `F33f`_`[psychology`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Psychology]`_`f research
>>References
>>>Citations
`:cite-note-1`!1.`! "wxPython Changelog". `*wxPython`*. 2024-09-11. Retrieved 2024-11-28.
`:cite-note-0-2`!2.`! `F0af`_`[↑`#cite-ref-0-2-0]`_`f `:citerefteam2017`aTeam, The wxPython (2017-07-14). "wxPython History". `*wxPython`*. Retrieved 2022-06-25.
`:cite-note-3`!3.`! `F0af`_`[↑`#cite-ref-3]`_`f "Yahoo! Groups : python-announce-list Messages :Message 95 of 1083". 2001-03-12. Archived from the original on 12 March 2001. Retrieved 2022-06-25.
`:cite-note-4`!4.`! `F0af`_`[↑`#cite-ref-4]`_`f "Goals of Project Phoenix". Retrieved 2016-03-17.
`:cite-note-5`!5.`! `F0af`_`[↑`#cite-ref-5]`_`f "Project Phoenix readme file on GitHub". `*`F33f`_`[GitHub`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=GitHub]`_`f`*. Retrieved 2014-01-01.
`:cite-note-6`!6.`! `F0af`_`[↑`#cite-ref-6]`_`f `:citerefrobin2017`aRobin (2017-04-16). "wxPython 4.0.0a1 Release". `*wxPython`*. Retrieved 2022-06-25.
`:cite-note-7`!7.`! `F0af`_`[↑`#cite-ref-7]`_`f `:citerefteam2020`aTeam, The wxPython (2020-11-21). "wxPython 4.1.1 Released". `*wxPython`*. Retrieved 2022-06-25.
`:cite-note-8`!8.`! `F0af`_`[↑`#cite-ref-8]`_`f "Copyright notice". Archived from the original on 2009-02-16. Retrieved 2009-02-27.
`:cite-note-9`!9.`! `F0af`_`[↑`#cite-ref-9]`_`f "6 lessons from Dropbox one million files saved every 15 minutes". 14 March 2011.
`:cite-note-10`!10.`! `F0af`_`[↑`#cite-ref-10]`_`f "Open source components and licenses". Google Inc. Retrieved 28 January 2013.
>>>Sources
• `:citerefrappindunn2006`aRappin, Noel; Dunn, Robin (March 1, 2006). `*wxPython in Action`*. Greenwich: `F33f`_`[Manning Publications`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Manning_Publications]`_`f. p. 552. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-1-932394-62-7.
>>Further reading
• `:citerefprecord2010`aPrecord, Cody (December 2010). `*wxPython 2.8 Application Development Cookbook`*. Greenwich: `F33f`_`[Packt Publishing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Packt_Publishing]`_`f. p. 308. `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-1-84951-178-0.
>>External links
Wikimedia Commons has media related to
WxPython
.
• Official website
• wxPython Widget Tutorial Series
• Project Phoenix main page
• List of applications developed with wxPython
`c`F0af`_`[↑ Back to top`#top]`_`f`a